{extend name="public/base" /}

<!-- 子导航 -->
{block name="sidebar"}
    {include file="article/sidemenu" /}
{/block}

{block name="body"}
    <!--一引入图片上传组件-->
	<script type="text/javascript" src="__PUBLIC__/static/uploadify/jquery.uploadify.min.js"></script>
	<script type="text/javascript" src="__PUBLIC__/static/uploadify/jquery.Huploadify.js"></script>
    <link rel="stylesheet" type="text/css" href="__PUBLIC__/static/uploadify/Huploadify.css"/>
    <!--引入图片裁剪组件-->
    <link rel="stylesheet" href="__PUBLIC__/static/Jcrop-0.9.12/css/jquery.Jcrop.css">
    <script src="__PUBLIC__/static/Jcrop-0.9.12/js/jquery.Jcrop.js"></script>


	<div class="main-title cf">
		<h2>
			编辑{$data.model_id|get_document_model='title'} [
			{volist name="rightNav" id="nav"}
			<a href="{:url('article/index','cate_id='.$nav['id'])}">{$nav.title}</a>
			{if condition="count($rightNav) gt $i"}<i class="ca"></i>{/if}
			{/volist}
			{present name="article"}：<a href="{:url('article/index','cate_id='.$data['category_id'].'&pid='.$article['id'])}">{$article.title}</a>{/present}
			]
		</h2>
	</div>
	<!-- 标签页导航 -->
<div class="tab-wrap">
	<ul class="tab-nav nav">
		{volist name=":parse_config_attr($model['field_group'])" id="group"}
			<li data-tab="tab{$key}" {eq name="key" value="1"}class="current"{/eq}><a href="javascript:void(0);">{$group}</a></li>
		{/volist}
	</ul>
	<div class="tab-content">
	<!-- 表单 -->
	<form id="form" action="{:url('update')}" method="post" class="form-horizontal">
		<!-- 基础文档模型 -->
		{volist name=":parse_config_attr($model['field_group'])" id="group"}
        <div id="tab{$key}" class="tab-pane {eq name="key" value="1"}in{/eq} tab{$key}">
            {volist name="fields[$key]" id="field"}
                {if condition="$field['is_show'] == 1 || $field['is_show'] == 3"}
                <div class="form-item cf">
                    <label class="item-label">{$field['title']}<span class="check-tips">{notempty name="field['remark']"}（{$field['remark']}）{/notempty}</span></label>
                    <div class="controls">
                        {switch name="field.type"}
                            {case value="num"}
                                <input type="text" class="text input-mid" name="{$field.name}" value="{$data[$field['name']]}">
                            {/case}
                            {case value="string"}
                                <input type="text" class="text input-large" name="{$field.name}" value="{$data[$field['name']]}">
                            {/case}
                            {case value="textarea"}
                                <label class="textarea input-large">
                                <textarea name="{$field.name}">{$data[$field['name']]}</textarea>
                                </label>
                            {/case}
                            {case value="date"}
                                <input type="text" name="{$field.name}" class="text date" value="{$data[$field['name']]|date='Y-m-d',###}" placeholder="请选择日期" />
                            {/case}
                            {case value="datetime"}
                                <input type="text" name="{$field.name}" class="text time" value="{$data[$field['name']]|time_format}" placeholder="请选择时间" />
                            {/case}
                            {case value="bool"}
                                <select name="{$field.name}">
                                    {volist name=":parse_field_attr($field['extra'])" id="vo"}
                                            <option value="{$key}" {eq name="data[$field['name']]" value="$key"}selected{/eq}>{$vo}</option>
                                    {/volist}
                                </select>
                            {/case}
                            {case value="select"}
                                <select name="{$field.name}">
                                    {volist name=":parse_field_attr($field['extra'])" id="vo"}
                                        <option value="{$key}" {eq name="data[$field['name']]" value="$key"}selected{/eq}>{$vo}</option>
                                    {/volist}
                                </select>
                            {/case}
                            {case value="radio"}
                                {volist name=":parse_field_attr($field['extra'])" id="vo"}
                                	<label class="radio">
                                    <input type="radio" value="{$key}" name="{$field.name}" {eq name="data[$field['name']]" value="$key"}checked="checked"{/eq}>{$vo}
                                	</label>
                                {/volist}
                            {/case}
                            {case value="checkbox"}
                                {volist name=":parse_field_attr($field['extra'])" id="vo"}
                                	<label class="checkbox">
                                    <input type="checkbox" value="{$key}" name="{$field.name}[]" {if condition="check_document_position($data[$field['name']],$key)"}checked="checked"{/if}>{$vo}
                                	</label>
                                {/volist}
                            {/case}
                            {case value="editor"}
                                <label class="textarea">
                                <textarea name="{$field.name}">{$data[$field['name']]}</textarea>
                                {:hook('adminArticleEdit', array('name'=>$field['name'],'value'=>$data[$field['name']]))}
                                </label>
                            {/case}
                            {case value="icon"}
                                <label class="icon">
                                    {:hook('adminArticleIcon',array('name'=>$field['name'],'value'=>$data[$field['name']]))}
                                </label>
                            {/case}
                            {case value="picture"}
                                <div class="controls">
				<!--<input type="file" id="upload_picture_{$field.name}">-->
                                    <div id="upload"></div>
                                    <input type="hidden" name="{$field.name}" id="cover_id_{$field.name}" value="{$data[$field['name']]}"/>
                                    <div class="upload-img-box">
                                        {notempty name="data[$field['name']]"}
                                        <div class="upload-pre-item"><img id='target' src="{$data[$field['name']]|get_cover='path'}"/></div>
                                        {if condition="($model.cover_width) OR ($model.cover.cover_height)"}
                                        <div class="previewWrapper" id="previewWrapper">
                                            <p class="crop-tip">温馨提示：请选择要裁剪的区域</p>
                                            <div class="previewBtn">
                                                <a href="javascript:;" id="pic_confirm">确定</a>
                                                <a href="javascript:;" id="pic_cancle">取消</a>
                                            </div>
                                        </div>
                                        {/if}
                                        {/notempty}
                                    </div>
                                </div>
			<script type="text/javascript">
			//上传图片
			    /* 初始化上传插件 */
//				$("#upload_picture_{$field.name}").uploadify({
//			        "height"          : 30,
//			        "swf"             : "__PUBLIC__/static/uploadify/uploadify.swf",
//			        "fileObjName"     : "download",
//			        "buttonText"      : "上传图片",
//			        "uploader"        : "{:url('file/uploadpicture',array('session_id'=>session_id()))}",
//			        "width"           : 120,
//			        'removeTimeout'	  : 1,
//			        'fileTypeExts'	  : '*.jpg; *.png; *.gif;',
//			        "onUploadSuccess" : uploadPicture{$field.name},
//			        'onFallback' : function() {
//			            alert('未检测到兼容版本的Flash.');
//			        }
//			    });

            $('#upload').Huploadify({
                auto:true,
                fileTypeExts:'*.jpg;*.png;*.exe',
                multi:true,
                buttonText: "上传图片",
                fileObjName: "download",
                showUploadedPercent:true,//是否实时显示上传的百分比，如20%
                showUploadedSize:true,
                uploader:"{:url('file/uploadpicture',array('session_id'=>session_id()))}",
                onUploadStart:function(){
                    //alert('开始上传');
                },
                onInit:function(){
                    //alert('初始化');
                },
                onUploadComplete:uploadPicture{$field.name}
            });

            var src = "";
            var cover_id = '';
            {notempty name="data[$field['name']]"}src = '{$data[$field['name']]|get_cover='path'}';cover_id='{$data[$field['name']]}';{/notempty}
            function uploadPicture{$field.name}(file, data){
                var data = $.parseJSON(data);
                if(data.status){
                    $("#cover_id_{$field.name}").val(data.id);
                    src = data.url || '__ROOT__' + data.path
                    $("#cover_id_{$field.name}").parent().find('.upload-img-box').html(
                        '<div class="upload-pre-item"><img id="target" src="' + src + '"/></div>' +
                        '<div class="previewWrapper" id="previewWrapper"><p class="crop-tip">温馨提示：请选择要裁剪的区域</p> <div class="previewBtn"> <a href="javascript:;" id="pic_confirm">确定</a><a href="javascript:;" id="pic_cancle">取消</a></div> </div></div>'
                    );
                } else {
                    updateAlert(data.info);
                    setTimeout(function(){
                        $('#top-alert').find('button').click();
                        $(that).removeClass('disabled').prop('disabled',false);
                    },1500);
                }
            }
            var jcropApi;

            {if condition="($model.cover_width) OR ($model.cover.cover_height)"}
            $('#target').Jcrop({
                allowSelect:false,
                allowResize:false,
                setSelect: [ 0, 0, {$model.cover_width}, {$model.cover_width} ],//默认左上角开始的160*160大小截图
            },function(){
                jcropApi = this;
            });
            $('#pic_confirm').click(function(){
                $.ajax({
                    type:'POST',
                    url:"{:url('file/cutpicture',array('session_id'=>session_id()))}",
                    data:{'cover_id':cover_id,'size':jcropApi.tellSelect()},
                    success:function(){
                        $("#target").attr('src',src+"?ramdon="+Math.random());
                        jcropApi.setImage(src+"?ramdon="+Math.random());
                        jcropApi.release();
                        $('#previewWrapper').remove();
                    },
                })
            })

            $('#pic_cancle').click(function(){
                jcropApi.destroy();
                $('#previewWrapper').remove();
            })
            {/if}
            </script>
                        {/case}
                            {case value="file"}
			<div class="controls">
				<input type="file" id="upload_file_{$field.name}">
				<input type="hidden" name="{$field.name}" value="{:think_encrypt(json_encode(get_table_field($data[$field['name']],'id','','File')))}"/>
				<div class="upload-img-box">
					{present name="data[$field['name']]"}
						<div class="upload-pre-file"><span class="upload_icon_all"></span>{$data[$field['name']]|get_table_field=###,'id','name','File'}</div>
					{/present}
				</div>
			</div>
			<script type="text/javascript">
			//上传图片
			    /* 初始化上传插件 */
//				$("#upload_file_{$field.name}").uploadify({
//			        "height"          : 30,
//			        "swf"             : "__PUBLIC__/static/uploadify/uploadify.swf",
//			        "fileObjName"     : "download",
//			        "buttonText"      : "上传附件",
//			        "uploader"        : "{:url('File/upload',array('session_id'=>session_id()))}",
//			        "width"           : 120,
//			        'removeTimeout'	  : 1,
//			        "onUploadSuccess" : uploadFile{$field.name},
//			        'onFallback' : function() {
//			            alert('未检测到兼容版本的Flash.');
//			        }
//			    });

            $('#upload').Huploadify({
                auto:true,
                fileTypeExts:'*.jpg;*.png;*.exe',
                multi:true,
                buttonText: "上传附件",
                fileObjName: "download",
                showUploadedPercent:true,//是否实时显示上传的百分比，如20%
                showUploadedSize:true,
                uploader:"{:url('{:url('File/upload',array('session_id'=>session_id()))}",
                onUploadStart:function(){
                    //alert('开始上传');
                },
                onInit:function(){
                    //alert('初始化');
                },
                onUploadComplete:uploadPicture{$field.name}
            });


				function uploadFile{$field.name}(file, data){
					var data = $.parseJSON(data);
			        if(data.status){
			        	var name = "{$field.name}";
			        	$("input[name="+name+"]").val(data.data);
			        	$("input[name="+name+"]").parent().find('.upload-img-box').html(
			        		"<div class=\"upload-pre-file\"><span class=\"upload_icon_all\"></span>" + data.info + "</div>"
			        	);
			        } else {
			        	updateAlert(data.info);
			        	setTimeout(function(){
			                $('#top-alert').find('button').click();
			                $(that).removeClass('disabled').prop('disabled',false);
			            },1500);
			        }
			    }
			</script>
                            {/case}
                            {default/}
                            <input type="text" class="text input-large" name="{$field.name}" value="{$data[$field['name']]}">
                        {/switch}
                    </div>
                </div>
                {/if}
            {/volist}
        </div>
		{/volist}

		<div class="form-item cf">
			<button class="btn submit-btn ajax-posts hidden" id="submit" type="submit" target-form="form-horizontal">确 定</button>
			<a class="btn btn-return" href="{$Think.cookie.__forward__}">返 回</a>
			{if condition="config('open_draftbox') and (request()->action() eq 'add' or $data['status'] eq 3)"}
			<button class="btn save-btn" url="{:url('article/autoSave')}" target-form="form-horizontal" id="autoSave">
				存草稿
			</button>
			{/if}
			<input type="hidden" name="id" value="{$data.id|default=''}"/>
			<input type="hidden" name="pid" value="{$data.pid|default=''}"/>
			<input type="hidden" name="model_id" value="{$data.model_id|default=''}"/>
			<input type="hidden" name="group_id" value="{$data.group_id|default=''}"/>
			<input type="hidden" name="category_id" value="{$data.category_id|default=''}">
		</div>
	</form>
	</div>
</div>
{/block}

{block name="script"}
<link href="__PUBLIC__/static/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
{php}if(config('color_style')=='blue_color') echo '<link href="__PUBLIC__/static/datetimepicker/css/datetimepicker_blue.css" rel="stylesheet" type="text/css">';{/php}
<link href="__PUBLIC__/static/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="__PUBLIC__/static/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
<script type="text/javascript" src="__PUBLIC__/static/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js" charset="UTF-8"></script>
<script type="text/javascript">

Think.setValue("type", {$data.type|default='""'});
Think.setValue("display", {$data.display|default=0});

$('#submit').click(function(){
	$('#form').submit();
});

$(function(){
    $('.date').datetimepicker({
        format: 'yyyy-mm-dd',
        language:"zh-CN",
        minView:2,
        autoclose:true
    });
    $('.time').datetimepicker({
        format: 'yyyy-mm-dd hh:ii',
        language:"zh-CN",
        minView:2,
        autoclose:true
    });
    showTab();

	{if condition="config('open_draftbox') and (request()->action() eq 'add' or $data['status'] eq 3)"}
	//保存草稿
	var interval;
	$('#autoSave').click(function(){
        var target_form = $(this).attr('target-form');
        var target = $(this).attr('url')
        var form = $('.'+target_form);
        var query = form.serialize();
        var that = this;

        $(that).addClass('disabled').attr('autocomplete','off').prop('disabled',true);
        $.post(target,query).success(function(data){
            if (data.status==1) {
                updateAlert(data.info ,'alert-success');
                $('input[name=id]').val(data.data.id);
            }else{
                updateAlert(data.info);
            }
            setTimeout(function(){
                $('#top-alert').find('button').click();
                $(that).removeClass('disabled').prop('disabled',false);
            },1500);
        })

        //重新开始定时器
        clearInterval(interval);
        autoSaveDraft();
        return false;
    });

	//Ctrl+S保存草稿
	$('body').keydown(function(e){
		if(e.ctrlKey && e.which == 83){
			$('#autoSave').click();
			return false;
		}
	});

	//每隔一段时间保存草稿
	function autoSaveDraft(){
		interval = setInterval(function(){
			//只有基础信息填写了，才会触发
			var title = $('input[name=title]').val();
			var name = $('input[name=name]').val();
			var des = $('textarea[name=description]').val();
			if(title != '' || name != '' || des != ''){
				$('#autoSave').click();
			}
		}, 1000*parseInt({:C('DRAFT_AOTOSAVE_INTERVAL')}));
	}
	autoSaveDraft();

	{/if}

});
</script>
{/block}
